import {connect } from 'react-redux'
import Counter from '../components/Counter'
import { increment,decrement} from '../redux/actions'
// 容器组件  用 connet  包装ui 组件 产生的新组件   新组件 和 redux 进行通信 
//connect() 高阶函数 1 返回值是函数  2 参数时函数 
// connect() 返回的函数是一个 高阶组件 里面接受一个ui组件 产生一个容器组件 
// 容器组件 作用 向Ui组件传入特定的属性

// 用于把 redux 管理的state 数据映射 成ui 组件 一般属性
function mapStateToProps(state){
   return {
      count:state
   }
}

// 用于 包含 dispatch 代码的函数 映射 成ui 组件 函数属性 
function mapDispatchToProps(dispatch){
   return {
      increment:(number)=>dispatch(increment(number)),
      decrement:(number)=>dispatch(decrement(number)),
   }
}

export default connect(
  mapStateToProps,   // 一般属性 
  mapDispatchToProps  // 函数属性
)(Counter)
